\chapter{绪论}
\label{cha:introdution}

% 论文背景部分

近年来，场景文本标注（Text Spotting）有了显著进步，能同时定位和识别文本，广泛应用于智慧办公、金融、交通等领域。与目标检测相比，文字除了定位还需要精确识别内容。如图\ref{fig:1-1}所示，前人的方法使用由一系列坐标组成的边界框来定义实例级别文本，其中封闭区域被视为正样本。由于边界框简单明了，其已成为许多其他视觉任务的首选注释格式。与通常以固定的外观呈现的对象检测任务中的目标不同，由于不同的排版和字体，文本实例可能以任意的形状出现，因而需要使用更多的坐标如多边形来标注这些任意形状的文本，否则可能引入很大的噪声，从而对识别性能产生负面影响。例如，TotalText\cite{8270088} 最多采用 20 个坐标来表示弯曲文本，而SCUT-CTW1500\cite{2017Deep}更是采用最多 28 个坐标来注释单个弯曲场景文本实例。

\begin{figure}[h]
    \centering
    \includegraphics[width=0.5\textwidth]{image/chap01/1-1.png}
    \caption{采用边界框表示文本区域的方法}
    \label{fig:1-1}
\end{figure}

在过去的十年里，场景文本识别的研究重点已经从水平方向和多方向文本转移到任意形状的文本，这反映在文本注释从矩形和四边形到更紧凑且昂贵的多边形的转变当中。如图\ref{fig:1-2}所示，矩形边界框表示容易包含其他文本实例，这使得之后的文本识别可能产生混淆。

\begin{figure}[h]
    \centering
    \begin{subfigure}{0.19\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-2a.png}
        \caption{\footnotesize Rectangle(55s)}
    \end{subfigure}
    \begin{subfigure}{0.19\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-2b.png}
        \caption{\footnotesize Quadrilateral(96s)}
    \end{subfigure}
    \begin{subfigure}{0.19\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-2c.png}
        \caption{\footnotesize Character(581s)}
    \end{subfigure}
    \begin{subfigure}{0.19\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-2d.png}
        \caption{\footnotesize Polygon(172s)}
    \end{subfigure}
    \begin{subfigure}{0.19\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-2e.png}
        \caption{\footnotesize Single-Point(11s)}
    \end{subfigure}
    \caption{不同注释方式及其耗时}
    \label{fig:1-2}
\end{figure}

此外，也有许多研究开发了更复杂的表示来适应任意形状的文本实例，如图\ref{fig:1-3}所示，Mask TextSpotter\cite{Lyu_2018_ECCV} 采用边界多边形来定位文本区域；Text Dragon\cite{Feng_2019_ICCV} 利用字符级边界框生成中心线，用于预测局部几何属性；ABCNet\cite{Liu_2020_CVPR} 将多边形注释转换为贝塞尔曲线，用于表示弯曲的文本实例；Text Snake\cite{Long_2018_ECCV} 通过一系列以对称轴为中心的有序圆形描述文本实例。这些启发式表示是由研究人员精心设计的，尽管它们被证实可以有效地调整文本检测与识别模块之间的特征，但对手工设计的规则的依赖导致其可推广性遭到破坏，需要指定的网络结构和模块来处理这些特征和注释。

\begin{figure}[h]
    \centering
    \begin{subfigure}{0.24\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-3a.png}
        \caption{Mask TextSpotter\cite{Lyu_2018_ECCV}}
    \end{subfigure}
    \begin{subfigure}{0.24\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-3b.png}
        \caption{Text Dragon\cite{Feng_2019_ICCV}}
    \end{subfigure}
    \begin{subfigure}{0.24\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-3c.png}
        \caption{ABCNet\cite{Liu_2020_CVPR}}
    \end{subfigure}
    \begin{subfigure}{0.24\textwidth}
        \includegraphics[width=\textwidth]{image/chap01/1-3d.png}
        \caption{Text Snake\cite{Long_2018_ECCV}}
    \end{subfigure}
    \caption{文本实例的不同表示}
    \label{fig:1-3}
\end{figure}

虽然使用多边形可以在一定程度上缓解标记任意形状文本的噪声问题，但这需要更大量的注释成本。此外，人类可以在没有这样一个定义区域的情况下直观地阅读文本，这一事实也鼓励了无边框文本标注的发展，从而消除了边界框注释的限制。与边界框注释方法相比，单点注释的耗时显著降低，可以获得具有竞争力的性能。基于这一特性，华中科技大学、华南理工大学、浙江大学、香港中文大学、字节跳动等机构的研究人员联合提出基于单点标注的 SPTSv2 方法，用于单点场景文本检测与识别。SPTSv2 将文本检测与识别任务解耦，并使用自回归的方式进行推理。其首先通过一个轻量级的检测网络来生成文本候选区域，然后使用一个基于 Transformer 的识别网络来对每个候选区域进行分类和定位。

尽管 SPTSv2 算法在性能上取得了很好的预测效果，该算法需要消耗大量的计算资源。在作者的预训练模型中，其首先在多个训练集上训练了 150 个 epoch，之后再分别在每个数据集上额外训练 200 个 epoch 以达到较好的预测性能。整个模型分布式地训练在 16 张英伟达 A100 显卡上，每个显卡的批处理大小为 8。这需要昂贵的造价，根据实际测试，同样的模型无法在单张 24G 内存的 RTX3080 上训练。即使将解码器（decode）从 6 层缩减为 2 层，批处理大小也被限制在最高 2 个样本，而完成所有训练集的训练耗时将达到近 1 年，这是非常不切实际的。高昂的成本导致该模型很难推广到特定场景下，需要探索提升算法训练速度，大量降低成本的方法。

针对上述问题，我们降低训练集规模，同时调整模型参数使其能够在 2 天时间内在 24 G 的 RTX 3080 上完成训练。通过对该模型的预测结果进行分析，我们期望寻找到一种提升该小规模模型训练效果的方法，使其性能逼近完全训练的模型，进而提升该模型的普适性。根据对小规模模型的行为分析，我们总结了其预测误差可能存在的模式，通过定性分析和引入编辑距离算法对预测结果进行单词矫正，大幅提升了小规模模型的预测性能。


